home *** CD-ROM | disk | FTP | other *** search
- @BOOK{Heckbert94gems,
- TITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={computer graphics, image processing},
- NOTE={comes with either MAC or DOS floppy},
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
-
- @INCOLLECTION{Bashein94,
- AUTHOR={Gerard Bashein and Paul R. Detmer},
- TITLE={Centroid of a Polygon},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={3-6},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={polygon area, polygon centroid},
- SUMMARY={
- Gives formulas and code to find the centroid (center of mass) of a
- polygon. This is useful when simulating Newtonian dynamics. Contains
- C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Schorn94,
- AUTHOR={Peter Schorn and Frederick Fisher},
- TITLE={Testing the Convexity of a Polygon},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={7-15},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={computational geometry, concave polygon},
- SUMMARY={
- Gives an algorithm and code to determine if a polygon is convex,
- non-convex (concave but not convex), or non-simple
- (self-intersecting). For many polygon operations, faster algorithms
- can be used if the polygon is known to be convex. This is true when
- scan converting a polygon and when determining if a point is inside a
- polygon, for instance. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Weiler94,
- AUTHOR={Kevin Weiler},
- TITLE={An Incremental Angle Point in Polygon Test},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={16-23},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={computational geometry, inclusion testing},
- SUMMARY={
- Provides an algorithm for testing if a point is inside a concave
- polygon, a task known as point inclusion testing in computational
- geometry. Point-in-polygon testing is a basic task when ray tracing
- polygonal models, so these methods are useful for 3D as well as 2D
- graphics. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Haines94,
- AUTHOR={Eric Haines},
- TITLE={Point in Polygon Strategies},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={24-46},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={computational geometry, inclusion testing,
- ray-polygon intersection testing},
- SUMMARY={
- Provides algorithms for testing if a point is inside a polygon, a task
- known as point inclusion testing in computational geometry.
- Point-in-polygon testing is a basic task when ray tracing polygonal
- models, so these methods are useful for 3D as well as 2D graphics.
- Haines surveys a number of algorithms for point inclusion testing in
- both convex and concave polygons, with empirical speed tests and
- practical optimizations. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Lischinski94triang,
- AUTHOR={Dani Lischinski},
- TITLE={Incremental {D}elaunay Triangulation},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={47-59},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={mesh generation, polygonization, Voronoi diagram,
- Delaunay triangulation},
- SUMMARY={
- Gives some code to solve a very important problem: finding Delaunay
- triangulations and Voronoi diagrams in 2D. These two geometric
- constructions are useful for triangular mesh generation and for nearest
- neighbor finding, respectively. Triangular mesh generation comes up
- when doing interpolation of surfaces from scattered data points, and in
- finite element simulations of all kinds, such as radiosity. Voronoi
- diagrams are used in many computational geometry algorithms. Contains
- C++ code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Glassner94normal,
- AUTHOR={Andrew Glassner},
- TITLE={Building Vertex Normals from an Unstructured Polygon List},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={60-73},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={smooth shading, topology, polyhedron},
- SUMMARY={
- Solves a fairly common rendering problem: if one is given a set of
- polygons in raw form, with no topological (adjacency) information, and
- asked to do smooth shading (Gouraud or Phong shading) of them, one must
- infer topology and compute vertex normals. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Greene94,
- AUTHOR={Ned Greene},
- TITLE={Detecting Intersection of a Rectangular Solid and a Convex Polyhedron},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={74-82},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={collision detection, octree, computational geometry},
- SUMMARY={
- Presents an optimized technique to test for intersection between a
- convex polyhedron and a box. This is useful when comparing bounding
- boxes against a viewing frustum in a rendering program, for instance.
- Contains pseudocode.
- },
- }
- @INCOLLECTION{Rabbitz94,
- AUTHOR={Rich Rabbitz},
- TITLE={Fast Collision Detection of Moving Convex Polyhedra},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={83-109},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={animation, collision detection, computational geometry, polyhedron},
- SUMMARY={
- A turn-key piece of software that solves a difficult but basic problem
- in physically based animation and interactive modeling. Contains C
- code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Hart94,
- AUTHOR={John C. Hart},
- TITLE={Distance to an Ellipsoid},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={113-119},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={ray tracing, ellipse},
- SUMMARY={
- Gives the formulas necessary to find the distance from a point to an
- ellipsoid, or from a point to an ellipse. These formulas can be useful
- for geometric modeling or for ray tracing.
- },
- }
- @INCOLLECTION{Ohashi94,
- AUTHOR={Yoshikazu Ohashi},
- TITLE={Fast Linear Approximations of {E}uclidean Distance in Higher Dimensions},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={120-124},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={integer arithmetic, square root},
- SUMMARY={
- Provides optimized formulas for approximating Euclidean distance in two
- or more dimensions without square roots. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Donovan94,
- AUTHOR={Walt Donovan and Tim Van Hook},
- TITLE={Direct Outcode Calculation for Faster Clip Testing},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={125-131},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={IEEE floating point arithmetic, line clipping},
- SUMMARY={
- A clever optimization of clip testing that exploits the properties
- of IEEE floating point format. Techniques are described to compute the
- ``outcodes'' needed for line clipping using only integer arithmetic.
- Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Miller94,
- AUTHOR={Robert D. Miller},
- TITLE={Computing the Area of a Spherical Polygon},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={132-137},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={cartography, Earth},
- SUMMARY={
- Gives the formulas needed to find the area of a polygon on a sphere
- that is bounded by great circle arcs. This is useful in cartography.
- Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Hill94perp,
- AUTHOR={F. S. {Hill Jr.}},
- TITLE={The Pleasures of 'Perp Dot' Products},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={138-148},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={geometry, fillet, perp-dot product, projection},
- SUMMARY={
- A tutorial on the ``perp dot product,'' which is the dot product, in
- 2D, of one vector and the vector perpendicular to another.
- },
- }
- @INCOLLECTION{Hanson94,
- AUTHOR={Andrew J. Hanson},
- TITLE={Geometry for N-Dimensional Graphics},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={149-170},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={geometry, hyperplane, determinant, Levi-Civita, volume},
- SUMMARY={
- A tutorial on n-dimensional geometry. Hanson generalizes a number of
- familiar concepts, such as plane equations, clipping, volume, and
- rotation, to n-D.
- },
- }
- @INCOLLECTION{Shoemake94arcball,
- AUTHOR={Ken Shoemake},
- TITLE={Arcball Rotation Control},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={175-192},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={interaction, quaternion},
- SUMMARY={
- Asks the question: how does one control the three degrees of freedom
- of rotation in 3D, using a 2D input device such as a mouse? Shoemake's
- answer: use a pair of points to designate a relative rotation, and use
- quaternions to make the rotation axis specification intuitive and
- consistent. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Cromwell94,
- AUTHOR={Robert L. Cromwell},
- TITLE={Efficient Eigenvalues for Visualization},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={193-198},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={scatterplot, matrix of central moments},
- SUMMARY={
- Answers the question: if I have a set of points in 3D, from what
- direction should I view them to get the best view (minimizing bunching
- in the projection)? Solving this involves the eigenvalues of a 3x3
- matrix. Optimized formulas are given for computing the eigenvalues.
- },
- }
- @INCOLLECTION{Wu94,
- AUTHOR={Kevin Wu},
- TITLE={Fast Inversion of Length- and Angle-Preserving Matrices},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={199-206},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={eigenvalue, 4x4 matrix},
- SUMMARY={
- Presents optimized formulas and code to compute the inverse of a 4x4
- matrix that is known to be length- and angle-preserving (consisting of
- only rotation, translation, and uniform scaling). Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Shoemake94decomp,
- AUTHOR={Ken Shoemake},
- TITLE={Polar Matrix Decomposition},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={207-221},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={quaternion, spectral decomposition, singular value decomposition},
- SUMMARY={
- Describes a method for decomposing an affine 3D transformation into
- translation, scaling, and rotation transformations in a physically
- meaningful way. This can be useful for keyframe animation. Contains C
- code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Shoemake94euler,
- AUTHOR={Ken Shoemake},
- TITLE={Euler Angle Conversion},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={222-229},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={quaternion, rotation},
- SUMMARY={
- Gives code to convert a rotation expressed by one triple of axes into
- another triple. Rotations in 3D are often described in terms of Euler
- angles: rotations about x, y, and z in some order. The order of
- rotations is significant, but not standardized. These routines are
- useful for doing such conversions. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Shoemake94twist,
- AUTHOR={Ken Shoemake},
- TITLE={Fiber Bundle Twist Reduction},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={230-236},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={animation, camera control, quaternion, topology, rotation},
- SUMMARY={
- Applies some advanced concepts from topology to the problem of
- minimizing twist (rotation about the z axis of screen space) in
- animation. Has color plate.
- },
- }
- @INCOLLECTION{Eilers94,
- AUTHOR={Paul H. C. Eilers},
- TITLE={Smoothing and Interpolation with Finite Differences},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={241-250},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={data smoothing, curve smoothing},
- SUMMARY={
- Gives simple techniques for smoothing a set of uniformly spaced
- samples. This can be used to remove noise from input data. Contains C
- code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Barry94,
- AUTHOR={Phillip Barry and Ron Goldman},
- TITLE={Knot Insertion Using Forward Differences},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={251-255},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={curve subdivision},
- SUMMARY={
- Describes a fast technique for subdivision of B-spline curves and
- surfaces. Subdivision is a fundamental operation in modeling and
- rendering. Contains pseudocode.
- },
- }
- @INCOLLECTION{Bajaj94,
- AUTHOR={Chandrajit Bajaj and Guoliang Xu},
- TITLE={Converting a Rational Curve to a Standard Rational {B}ernstein-{B}\'ezier Representation},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={256-260},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={Bezier curve, rational curve, NURB},
- SUMMARY={
- Discusses a low-level operation on curves: conversion of a rational
- piecewise polynomial curve into rational Bernstein-Bezier form, a
- commonly used type of non-uniform rational B-spline (NURB). Rational
- splines are useful because they allow conic curves to be represented
- exactly, whereas standard (polynomial) splines do not. Contains
- pseudocode.
- },
- }
- @INCOLLECTION{Klassen94,
- AUTHOR={R. Victor Klassen},
- TITLE={Intersecting Parametric Cubic Curves by Midpoint Subdivision},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={261-277},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={Bezier curve, curve intersection, curve subdivision},
- SUMMARY={
- Provides code to find the intersection points of planar cubic curves.
- Contains C++ code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Lischinski94patch,
- AUTHOR={Dani Lischinski},
- TITLE={Converting Rectangular Patches into {B}\'ezier Triangles},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={278-285},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={Bezier surface, biquadratic patch},
- SUMMARY={
- A parametric surface conversion routine. Contains C++ code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Peterson94,
- AUTHOR={John W. Peterson},
- TITLE={Tessellation of NURB Surfaces},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={286-320},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={surface subdivision, NURB, Bezier surface, B-spline surface,
- polygonization},
- SUMMARY={
- Gives code for polygonizing a very general class of parametric
- surfaces: NURBs. Polygonization of parametric surfaces is useful both
- for rendering and for modeling. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Shene94equation,
- AUTHOR={Ching-Kuang Shene},
- TITLE={Equations of Cylinders and Cones},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={321-323},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={quadric surface},
- SUMMARY={
- Derives the implicit equations of cylinders and cones.
- },
- }
- @INCOLLECTION{Bloomenthal94,
- AUTHOR={Jules Bloomenthal},
- TITLE={An Implicit Surface Polygonizer},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={324-349},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={iso-surface, marching cubes, polygonization},
- SUMMARY={
- Gives code to polygonize an arbitrary implicit surface. Polygonization
- is a common approach to implicit surface rendering and volume
- rendering. When combined with code for trilinear interpolation code, a
- program for polygonizing volume data can easily be constructed. The
- resulting polygonizations will be superior to those generated by the
- ``Marching Cubes'' algorithm, in many cases. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Shene94intersect,
- AUTHOR={Ching-Kuang Shene},
- TITLE={Computing the Intersection of a Line and a Cylinder},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={353-355},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={quadric surface, ray tracing, cone},
- SUMMARY={
- Geometric method for intersecting a ray with a cylinder.
- },
- }
- @INCOLLECTION{Waggenspack94,
- AUTHOR={Joseph M. Cychosz and Warren N. {Waggenspack Jr.}},
- TITLE={Intersecting a Ray with a Cylinder},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={356-365},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={quadric surface, ray tracing},
- SUMMARY={
- Geometric method for intersecting a ray with a cylinder. Contains C
- code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Cohen94,
- AUTHOR={Daniel Cohen},
- TITLE={Voxel Traversal along a 3{D} Line},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={366-369},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={digital line drawing, grid traversal, ray tracing, scan conversion},
- SUMMARY={
- Visits all the voxels along a 3D line segment with integer endpoints,
- something like a 3D Bresenham's algorithm. This code could be modified
- to take endpoints with fixed point coordinates. Then the algorithm
- could be very useful for ray tracing, when a uniform grid is being used
- as a spatial data structure for optimization, or for volume rendering
- of grid data. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Chiu94,
- AUTHOR={Kenneth Chiu and Peter Shirley and Changyaw Wang},
- TITLE={Multi-Jittered Sampling},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={370-374},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={antialiasing, jitter, stochastic sampling},
- SUMMARY={
- Presents a new technique for high quality stochastic sampling. This is
- useful for antialiasing. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Heckbert94minimal,
- AUTHOR={Paul S. Heckbert},
- TITLE={A Minimal Ray Tracer},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={375-381},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={ray tracing, obfuscation},
- SUMMARY={
- Answers the question: how short can a ray tracer be? Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Schlick94phong,
- AUTHOR={Christophe Schlick},
- TITLE={A Fast Alternative to {P}hong's Specular Model},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={385-387},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={Phong illumination, specular reflection, exponentiation},
- SUMMARY={
- Describes a simple approximation to Phong's specular reflection formula
- that does not require exponentiation or table lookup.
- },
- }
- @INCOLLECTION{Fisher94,
- AUTHOR={Frederick Fisher and Andrew Woo},
- TITLE={{R.E} versus {N.H} Specular Highlights},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={388-400},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={Phong illumination, specular reflection},
- SUMMARY={
- Compares two common variants of Phong's specular reflection formula and
- derives a surprising relationship between them.
- },
- }
- @INCOLLECTION{Schlick94perlin,
- AUTHOR={Christophe Schlick},
- TITLE={Fast Alternatives to {P}erlin's Bias and Gain Functions},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={401-403},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={hypertexture, texture synthesis},
- SUMMARY={
- Gives a simple approximation to some formulas that are commonly used in
- procedural texture synthesis and volume synthesis.
- },
- }
- @INCOLLECTION{Behrens94,
- AUTHOR={Uwe Behrens},
- TITLE={Fence Shading},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={404-409},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={Gouraud shading, Phong shading},
- SUMMARY={
- Proposes an approach halfway between Gouraud shading and Phong
- shading: shade along the edges of the polygon, but interpolate across
- the interior. Contains pseudocode.
- },
- }
- @INCOLLECTION{Kopp94,
- AUTHOR={Manfred Kopp and Michael Gervautz},
- TITLE={{XOR}-Drawing with Guaranteed Contrast},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={413-414},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={cursor},
- SUMMARY={
- Gives simple guidelines for the choice of write mask when drawing
- cursors and other graphics with exclusive-OR on multi-bit frame
- buffers.
- },
- }
- @INCOLLECTION{Ward94,
- AUTHOR={Greg Ward},
- TITLE={A Contrast-Based Scalefactor for Luminance Display},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={415-421},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={brightness, color, image display, perception, Radiance system},
- SUMMARY={
- Presents a simple technique for displaying pictures that have a dynamic
- range (ratio of brightest to dimmest pixel) beyond that of the
- display. Has color plates.
- },
- }
- @INCOLLECTION{Schlick94dynamic,
- AUTHOR={Christophe Schlick},
- TITLE={High Dynamic Range Pixels},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={422-429},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={quantization, dynamic range},
- SUMMARY={
- Proposes a pixel encoding technique that allows color images with high
- dynamic range to be stored using only 24 bits per pixel. Contains C
- code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Schlag94,
- AUTHOR={John Schlag},
- TITLE={Fast Embossing Effects on Raster Image Data},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={433-437},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={bump mapping, texture, image filter, paint program, shading},
- SUMMARY={
- Presents a simple, fast technique that interprets an image as a height
- field or bump map, and then shades it, yielding an embossing effect.
- Has color plate. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Heckbert94coons,
- AUTHOR={Paul S. Heckbert},
- TITLE={Bilinear {C}oons Patch Image Warping},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={438-446},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={morph, resampling, bilinear Coons patch},
- SUMMARY={
- Presents a fast technique to warp an image according to four boundary
- curves. This can be used to correct distortions in images, or to
- introduce them, for special effects purposes. Has color plates.
- Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Wolberg94,
- AUTHOR={George Wolberg and Henry Massalin},
- TITLE={Fast Convolution with Packed Lookup Tables},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={447-464},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={image filter, image magnification, image resampling},
- SUMMARY={
- Gives optimized code for convolution of discrete signals. This is
- useful for image resampling and filtering. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Cychosz94,
- AUTHOR={Joseph M. Cychosz},
- TITLE={Efficient Binary Image Thinning Using Neighborhood Maps},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={465-473},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={image skeleton, image filter},
- SUMMARY={
- Provides fast code to thin a bitmap image and find its ``skeleton.''
- Image thinning is used for pattern recognition. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Zuiderveld94,
- AUTHOR={Karel Zuiderveld},
- TITLE={Contrast Limited Adaptive Histogram Equalization},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={474-485},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={contrast enhancement},
- SUMMARY={
- Presents a contrast enhancement technique that overcomes some of the
- flaws of simple histogram equalization, such as noise amplification and
- suppression of local contrast. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Paeth94,
- AUTHOR={Alan W. Paeth},
- TITLE={Ideal Tiles for Shading and Halftoning},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={486-492},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={bitblt, dither, stipple},
- SUMMARY={
- Discusses heuristics and design techniques for top-quality dither and
- stipple patterns.
- },
- FTP={picture in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Christensen94,
- AUTHOR={Jon Christensen and Joe Marks and Stuart Shieber},
- TITLE={Placing Text Labels on Maps and Diagrams},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={497-504},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={cartography, label placement, layout, relaxation,
- simulated annealing},
- SUMMARY={
- Presents an algorithm to arrange text labels in a way that avoids
- overlap. This is useful in cartography.
- },
- }
- @INCOLLECTION{Szirmay-Kalos94,
- AUTHOR={L\'aszl\'o Szirmay-Kalos},
- TITLE={Dynamic Layout Algorithm to Display General Graphs},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={505-517},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={cartography, layout, graph visualization, physically-based methods},
- SUMMARY={
- Gives code that finds aesthetic arrangements for a graph. This could
- be used to graphically display data structures. Contains C++ code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Hill94trilinear,
- AUTHOR={Steve Hill},
- TITLE={Tri-linear Interpolation},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={521-525},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={trilinear interpolation, bilinear interpolation, reconstruction},
- SUMMARY={
- Gives optimized code for performing linear interpolation in a 3D grid.
- Trilinear interpolation is useful for volume rendering, and its 2D
- variant, bilinear interpolation, is a very common operation in image
- processing. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Eker94,
- AUTHOR={Steven Eker},
- TITLE={Faster Linear Interpolation},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={526-533},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={line drawing, Gouraud shading, integer arithmetic, image resampling},
- SUMMARY={
- Gives optimized code for generic linear interpolation. This is most
- useful for assembler language programming of graphics operations such
- as Gouraud shading and image scaling. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Doue94,
- AUTHOR={Jean-Fran\c cois Dou\'e},
- TITLE={C++ Vector and Matrix Algebra Routines},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={534-557},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={vector algebra, transformation, ray tracing},
- SUMMARY={
- A C++ subroutine library for 2D, 3D, and 4D vector and matrix
- operations. Contains C++ code. The Floppy disk that comes with the
- book and the FTP collection contain a simple ray tracer written using
- the library.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
- @INCOLLECTION{Glassner94library,
- AUTHOR={Andrew Glassner and Eric Haines},
- TITLE={C Header File and Vector Library},
- BOOKTITLE={Graphics Gems IV},
- EDITOR={Paul Heckbert},
- PAGES={558-570},
- PUBLISHER={Academic Press},
- YEAR={1994},
- ADDRESS={Boston},
- KEYWORDS={vector algebra, root-finding},
- SUMMARY={
- Revised version of the ``Graphics Gems'' subroutine library, used in
- several other articles in the book. Contains C code.
- },
- FTP={code in princeton.edu pub/Graphics/GraphicsGems/GemsIV/GGemsIV.tar.Z},
- }
-